package cn.openea.perpartner.componet.web.service;

import cn.openea.perpartner.componet.web.entity.SmsHistory;
import cn.openea.perpartner.componet.web.entity.SmsSign;
import cn.openea.perpartner.componet.web.entity.SmsTemplate;
import cn.openea.perpartner.componet.web.entity.dto.sms.BatchDto;
import cn.openea.perpartner.componet.web.entity.dto.sms.SendDetail;
import cn.openea.perpartner.componet.web.entity.dto.sms.SmsDto;
import cn.openea.perpartner.componet.web.entity.vo.SmsTemplateVo;
import com.aliyuncs.dysmsapi.model.v20170525.QuerySendDetailsResponse;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * (SmsHistory)表服务接口
 *
 * @author Weird077
 * @since 2023-04-07 12:28:34
 */
public interface ISmsService extends IService<SmsHistory> {

    List<SmsHistory> selectHistoryList(SmsHistory sms);

    boolean sendMsg(SmsDto smsDto);
    boolean batchSendMsg(SmsDto smsDto) ;
    boolean executeSendBatchMsg(BatchDto smsDto);
    QuerySendDetailsResponse QuerySendDetails(SendDetail sendDetail);
    List<SmsTemplate> selectTemplateList(SmsTemplateVo templateVo);

    boolean deleteSmsTemplate(List<Long> idList);

    boolean saveSmsTemplate(SmsTemplate smsTemplate);

    SmsTemplate selectTemplateById(String id);

    SmsTemplate selectTemplateByCode(String code);

    List<SmsSign> selectSignList(SmsSign sign);

    void saveSmsSign(SmsSign sign);

    SmsSign selectSignById(String id);

    int deleteSmsSign(List<Long> idList);


}

